Models of DG Kernel
    A Model is a collection of objects and related information displayed as a scene in 3D window of DG Kernel 
        or loaded to perform background manipulations 
Models consist of Entities.  
    Entities are arranged in a child/parent tree. 
        Model keeps array of top-level entities. The rest of the entities are children and descendents of top-level entities 
     Major attributes of a model: 
    
        - Array of top level entities
 
        - Name
 
        - Description
 
     
    Model also serves as a document of DG Kernel software. It contains all information stored or loaded via the supported formats 
    Programmatically model can be accessed and manipulated via IModel_DG interface,
        acquired via GetModel() method of DG Kernel control
     
Empty models (models, which do not contain any items) are considered valid. 
Structure of a model can be viewed in Model Explorer, 
 available via Model > Explore context menu command. 
Model Persistance
Models can be loaded or saved by DG Kernel component programmatically at runtime. 
    To save use either Save
 or SaveAs
 methods of the component or IModel_DG.Save*() methods. 
To load a model, either change the ModelPath
 property to a new location or use IModel_DG.Load*()..  
The required format in the above operations is determined by the file extension 
    IModelEx
also provides methods for saving and loading the model to and from a memory
buffer bypassing the file system, which allows embedding DG Kernel models in
application documents and other tasks. 
It is possible to change the default .mdg model file extension.
    Details. Models can also 
    be saved to or loaded from a memory buffer, embedded into the application's .exe 
    file or/and encrypted for security. Details 
    
    Standalone Models
    Standalone Models are model instances not attached to a control, so they are not displayed in a view. They are useful in background operations involving models, 
        for an example for saving a selected subset of entities.
     
    Standalone models can be created using IObjectGenerator_DG.Create("Model_DG"); 
        Standalone models are deleted as soon as the last reference to the model goes out of scope or the object holding the reference is deleted  
                 |